You are here: Statements and Functions > Free
Syntax samples
FREE {<quantity>} <resource>, {{quantity} <resource>...}
FREE Res1, 2 Res2, 5 Res3A
FREE ALL
FREE RES(Attr1)
Frees resources which are currently "owned" by the current entity. These resources must have been captured through a GET or JOINTLY GET statement.
Location processing logic and downtime logic.
Components
<quantity>
The number of the following resource to free. A value of zero is ignored and values less than zero result in an error. This quantity may be any numeric expression and is evaluated and truncated to an integer every time the FREE statement is encountered.
<resource>
The name of the resource to free. The ALL keyword may be used here to free all resources owned by an entity. Any resource which is not owned by the entity will be ignored.
Example
In the following example, EntA arrives at Loc1 for a multi-step process requiring the use of resources Res1 and Res2. The first step requires the simultaneous use of Res1 and Res2 for a normally distributed amount of time. ProModel then frees Res1while Res2 performs the second step of the process according to a Lognormal distribution.
Process Table
Entity |
Location |
Operation (min) |
---|---|---|
EntA |
Loc1 |
JOINTLY GET Res1 AND Res2 WAIT N(4.5,.2) FREE Res1 WAIT L(3.4,.23) FREE Res2 |
Routing Table
Blk |
Output |
Destination |
Rule |
Move Logic |
---|---|---|---|---|
1 |
EntA |
Loc2 |
FIRST 1 |
MOVE FOR 5 |
GET and JOINTLY GET.